package com.gln.bloger.dao;

import java.util.List;

import com.gln.bloger.exception.BlogerException;
import com.gln.bloger.pojos.Comment;
import com.gln.bloger.pojos.Entry;
import com.gln.bloger.pojos.Website;


public interface CommentDao extends BaseDao<Comment>{
	/**
	 * get all comments write by specified user
	 * @param aurhorId
	 * @return  List<Comment>
	 * @throws BlogerException
	 */
	public List<Comment> getByAuthorId(String authorId)throws BlogerException;
	/**
	 * get recent comments
	 * @return
	 * @throws BlogerException
	 */
	public List<Comment> getRecentComments(Website website, int num) throws BlogerException;
	/**
	 * get comment by entry id
	 * @param entryId
	 * @return
	 * @throws BlogerException
	 */
	public List<Comment> getByEntry(Entry entry) throws BlogerException;
	/**
	 * get all comment
	 * @param entry
	 * @return
	 * @throws BlogerException
	 */
	public List<Comment> getAllComment(Website website)throws BlogerException;
	/**
	 * get wait for approve comment
	 * @param website
	 * @return
	 * @throws BlogerException
	 */
	public List<Comment> getWaitForApproveComments(Website website)throws BlogerException;
}
